namespace WenYu.Core.Errors
{
    /// <summary>
    /// 错误格式化器接口
    /// 
    /// 负责将 CompileError 格式化为友好的输出。
    /// 可以有不同的实现：
    /// - ConsoleErrorFormatter: 终端彩色输出
    /// - JsonErrorFormatter: JSON格式（用于IDE集成）
    /// - HtmlErrorFormatter: HTML格式（用于Web IDE）
    /// </summary>
    public interface IErrorFormatter
    {
        /// <summary>
        /// 格式化错误为字符串
        /// </summary>
        string Format(CompileError error);
        
        /// <summary>
        /// 直接输出错误到控制台（支持彩色输出）
        /// </summary>
        void Print(CompileError error);
    }
}

